Sampled-data I-PD control apparatus

ABSTRACT

A sampled-data I-PD control apparatus controls an interference multi-input/multi-output process in accordance with an I-PD action. The apparatus comprises an identification signal generator for superposing persistently exciting identification signals on control variables (inputs) of the process, an identifying circuit for identifying a pulse transfer function of the process in accordance with the control variables of the process and controlled variables (outputs) of the process, an S-transfer function calculator for transforming the identified pulse transfer function to an S-transfer function, and a tuning circuit for matching the S-transfer function with that of a process model and for tuning sampled-data I-PD control parameters in accordance with a matching result.

BACKGROUND OF THE INVENTION

The present invention relates to a sampled-data I-PD control apparatus.

An example of a sampled-value control system for controlling a multi-input/multi-output process is proposed by the present inventors as per "Design of Sampled-Data Noninterference I-PD Control System having Different Sampling Periods" (the 25th Automatic Control Association Meeting, Nov. 18 to 20, 1982). According to this system, an optimal sampling period is preset for every control loop in accordance with the characteristics and specifications of input/output loops of a process to be controlled. Therefore, unlike conventional control systems wherein the shortest sampling periods must be preset for all control loops, the calculation time for sampled-data control can be shortened. However, the design described above is based upon an assumption that the dynamic characteristic of the process is known. An auto-tuning function is not included in the above-mentioned design. In auto tuning, the process dynamic characteristic is identified during the closed loop control of the process and the sampled-data I-PD control parameters are tuned in accordance with the identification result. For this reason, when the dynamic characteristic of the process changes, the control apparatus cannot continue to control the process properly. In addition to this disadvantage, the above-mentioned design is made only to satisfy a predetermined design specification, and fails to provide flexibility in the control system. For example, in the control system, noninterfered control loops have zero steady-state errors and an overshoot of the step response by 10%. For this reason, the design specification for providing a control system which is free from overshoot cannot be obtained.

SUMMARY OF THE INVENTION

It is an object of the present invention to provide a sampled-data I-PD control apparatus for identifying dynamic characteristic of an interference multi-input/multi-output process and for auto-tuning sampled-data I-PD control parameters in accordance with the identified dynamic characteristic.

The above object can be accomplished by a sampled-data I-PD control apparatus for an N- (any natural number) input/N-output process, which comprises, a control error calculator for calculating differences between N-outputs of the process and corresponding N set-point values to generate N control errors, a sampled-data I-PD controller for calculating the N outputs of the process and the N control errors in accordance with sampled-data I-PD control parameters to obtain N control variables, and for supplying the N control variables to N inputs of the process, an identification signal generator for respectively supplying N persistently exciting identification signals to the N inputs of the process, an identification circuit for identifying a pulse transfer function of the process in accordance with the N inputs and N outputs of the process while the N persistently exciting identification signals are supplied to the N inputs, an S-transfer function calculator for transforming an identified pulse transfer function to an S-transfer function, and a tuning circuit for calculating an S-transfer function from the set-point value to the process output in accordance with a transformed S-transfer function, matching the calculated S-transfer function with an S-transfer function from the set-point value to the process output of a noninterference N-input/N-output process model, and tuning the sampled-data I-PD control parameters in accordance with a matching result.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of a sampled-data I-PD control apparatus according to an embodiment of the present invention;

FIG. 2 is a block diagram showing the detailed configuration of a control system for a 2-input/2-output process;

FIG. 3 is a block diagram showing a discrete time model of a process;

FIG. 4 is a block diagram of a sampled-data I-PD control system model; and

FIGS. 5 and 6 are respectively graphs of the relationship between the response shape parameter and the step response.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

A sampled-data I-PD control apparatus according to an embodiment of the present invention will be described with reference to the accompanying drawings. FIG. 1 is a block diagram of a sampled-data I-PD control apparatus for controlling an interference multi-input/multi-output process 10 in a closed loop. The multi-input/multi-output process 10 has a plurality of controlled variables such as a temperature, a humidity, a pressure, or a water level, and a plurality of control variables for respectively controlling the controlled variables. However, in the interference process, a given controlled variable is influenced by the corresponding controlling variable and by other controlling variables. Referring to FIG. 1, a control variable is given by an input signal u_(i) (t) to the process 10, and a controlled variable is given by an output signal y_(i) (t) from the process 10. A control system has N loops each corresponding to each input/output pair of the process 10. Each signal having a suffix i (where i=1, 2, . . . , N) is given as a vector of N-dimension. A controlled variable y_(i) (t) output from the process 10, and a set-point value r_(i) (t) of the controlled variable are supplied to the (-) input terminal and the (+) input terminal of an adder 12, respectively. The adder 12 calculates a control error e_(i) (t)=r_(i) (t)-y_(i) (t) of each loop. The control error e_(i) (t) is an error of a continuous time and is sampled by a sampler 14 into a sampled-data control error e_(i) *(k) of a discrete time. The sampled-data control error e_(i) *(k) is supplied to a sampled-data I-PD controller 16. It should be noted that k=t/τ_(i), and τ_(i) is a sampling period of each loop, which is independent in units of loops. In I-PD control, a local feedback to a control variable is performed by PD action to control the pole location, and a steady state error of the control error is set by I action to be zero. The sampled-data I-PD controller 16 comprises a sampled-data I controller 18, a sampled-data PD controller 20 and an adder 22. The control error e_(i) *(k) output from the sampler 14 is supplied to the sampled-data I controller 18. The controlled variable y_(i) (t) output from the process 10 is converted to a sampled-data controlled variable y_(i) *(k) through a sampler 24. The sampler 24 is operated in synchronism with the sampler 14. The sampled-data controlled variable y_(i) *(k) is supplied to the sampled-data PD controller 20. The sampled-data I controller 18 and the sampled data PD controller 20 respectively receive the control error e_(i) *(k) and the controlled variable y_(i) *(k), and respectively perform the sampled-data I calculation and the sampled-data PI calculation. An output signal from the sampled-data I controller 18 and an output signal from the sampled-data PD controller 20 are supplied to the (+) input terminal and the (-) input terminal of the adder 22, respectively. An output signal from the adder 22 is an output signal u_(Oi) *(k) from the sampled-data I-PD controller 16. In order to satisfy the identifiability condition (e.g., T. Soderstrom, L. Ljung and I. Gustavsoon: Identifiability Conditions for Linear Multivariable Systems Operating under Feedback, IEEE Trans. act. Control AC-21, 1976) in the closed loop, an identification signal, such as a persistently exciting signal, is supplied to the control system of the present invention and hence to the input terminals of the process 10. The output signal u_(Oi) *(k) from the sampled-data I-PD controller 16 is supplied to the first (+) input terminal of an adder 26, and a persistently exciting identification signal v_(i) *(k) output from an identification signal generator 28 is supplied to the second (+) input terminal of the adder 26. The output signal (=u_(Oi) *(k)+v_(i) *(k)) from the adder 26 is given as a control variable u_(i) *(k) for the process 10. The control variable u_(i) *(k) is converted to the control variable u_(i) (t) of a continuous time through a 0th holder 30 [(1-Z⁻τ.sbsp.i)/S]. The control variable u_(i) (t) is supplied to the process 10.

Control parameters of the sampled-data I-PD controller 16 are automatically tuned in accordance with the dynamic characteristics of the process 10 as follows. The control variable u_(i) *(k) of the discrete time output from the adder 26, and the controlled variable y_(i) *(k) output from the sampler 24 are supplied to a pulse transfer function identifying circuit 32. The identifying circuit 32 identifies a transfer function in a Z-domain, i.e., a pulse transfer function G_(ij) (z_(i) ⁻¹) in accordance with the signals received thereto, where G_(ij) is a pulse transfer function from the jth control variable u_(j) (t) to the ith controlled variable y_(i) (t). Note that z_(i) ⁻¹ =e⁻τ.sbsp.i^(s). The identified pulse transfer function G_(ij) (z_(i) ⁻¹) is supplied to an S-transfer function calculator 34 and is transformed into a transfer function in an S-domain, i.e., an S-transfer function Gp_(ij) (s). The S-transfer function Gp_(ij) (s) is supplied to a control parameter tuning circuit 36. The tuning circuit 36 also receives design parameters T, τ₂, τ₃ and τ₄ generated from a design parameter calculator 38 which receives a sampling period τ_(i) and a response shape parameter α_(i) which determines the overshoot characteristic. The sampled-data I-PD controller 16 can be set in the I-PD mode or I-P mode. A mode signal I-PD/I-P is also supplied to the tuning circuit 36. The tuning circuit 36 tunes the sampled-data I-PD control parameters by using inputs in accordance with the process dynamic characteristics.

FIG. 2 is a block diagram showing the relationship between two loops when the process 10 comprises a 2-input/2-output process. The process 10 can be expressed by transfer functions Gp₁₁ (s) and Gp₂₂ (s) of the respective loops, and transfer functions Gp₂₁ (s) and Gp₁₂ (s) from the control variable of one loop to the controlled variable of the other loop. Therefore, the I controller is expressed by g₁₁ *(z₁ ⁻¹), g₂₁ *(z₁ ⁻¹), g₁₂ *(z₂ ⁻¹) and g₂₂ *(z₂ ⁻¹), and the PD controller is also expressed by λ₁₁ *(z₁ ⁻¹), λ₂₁ *(z₁ ⁻¹), λ₁₂ *(z₂ ⁻¹) and λ₂₂ *(z₂ ⁻¹). The sampling periods of the samplers are independent of each other in units of loops, so that the holder has a sampling period τ₁ or τ₂. Similarly, the identification signals v₁ *(k) and v₂ *(k) are used for the loops, respectively.

The operation of the sampled-data I-PD control apparatus will now be described. In order to identify the dynamic characteristics of the process under the closed loop control, the identification signal v_(i) *(k) is superposed on the control variable u_(Oi) *(k) of each loop. This superposition continues during the identification period of the process dynamic characteristics, and is not generally performed during process control. In this embodiment, a maximum period sequence (M-sequence) signal which is generated by a simple circuit is selected as a persistently exciting signal. The M-sequence signal is expressed as follows when the period is 127 and the amplitude is AM:

    V*.sub.i (k)=AM·{2m(k)-1}                         (1)

for m(k)=MOD[m(k-1)+m(k-7),2] where MOD is the modulo operation.

The process dynamic characteristics under the closed loop control can thus be identified. According to equation (1), the M-sequence signal is given as a binary signal. A great change is not given to the process, so that the dynamic characteristics of the process can be stably identified. In addition, the M-sequence signal includes many frequency components, so that an identification can be performed in a short time.

In this embodiment, a Z-domain pulse transfer function G_(ij) (z_(i) ⁻¹) is identified in accordance with the control variable u_(i) *(k) and the controlled variable y_(i) *(k) of the discrete time. A discrete time model of the N-input/N-output process is defined in FIG. 3, so the following equations can be obtained:

    Y(k)=G(z.sup.-1)U(k)+W(k)                                  (2)

    W(k)=Gn(z.sup.-1)D(k)                                      (3)

where

Y(k): the process output (controlled variable) of the N-dimension vector having y_(i) (k) as a component

U(k): the process input (control variable) of the N-dimension vector having u_(i) (k) as a component

D(k): the N-dimension white noise having d_(i) (k) as a component, in which

    E{D(k)}=0

    E{D(k)D.sup.T (l)}=δ.sub.kl Λ

where

E{A} is the expectation of A, and Λ is the covariance matrix wherein δ_(kl) =1 for k=l, and δ_(kl) =0 for k≠l

G(z⁻¹): the N×N matrix having as a component

    G.sub.ij (z.sub.i.sup.-1)=B.sub.ij (z.sub.i.sup.-1)/A.sub.ij (z.sub.i.sup.-1)

Gn(z⁻¹): the N×N diagonal matrix having as a component

    Gn.sub.ii (z.sub.i.sup.-1)=D.sub.i (z.sub.i.sup.-1)/C.sub.i (z.sub.i.sup.-1)

where

A_(ij) (z_(i) ⁻¹), B_(ij) (z_(i) ⁻¹), C_(i) (z_(i) ⁻¹) and D_(i) (z_(i) ⁻¹) are polynomials of z⁻¹

when equation (3) is substituted into equation (2), and equation (2) is represented by its components, the following is obtained: ##EQU1##

Equation (4) for the ith process output y_(i) (k) may be rewritten in the following manner: ##EQU2##

Equation (5) indicates a model for the N-input/one-output process. Therefore, the N-input/N-output process can be represented by a combination of the N-input/one-output processes. When equation (5) is solved for i=1, 2, . . . N, an N-input/N-output model is given. When equation (5) is reduced to a common denominator and the denominator is cancelled, the following equation is obtained: ##EQU3##

According to equation (6), a parameter prediction technique used for identifying the one-input/one-output system can also be used for identifying the dynamic characteristics of the multi-input/multi-output system. In the pulse transfer function identifying circuit 32 of this embodiment, the pulse transfer function Gij(z⁻¹) of the process is identified by a recursive least square (RLS) algorithm. The pulse transfer function can be identified by the identifying unknown parameters a₁ *, . . . , a_(na) *, b₁₁ *, . . . , b_(1nb1) *, . . . , b_(N1) *, . . . , b_(NnbN) *, C₁ *, . . . , C_(nc) *. The process model can be expressed as follows in accordance with the RLS algorithm. ##EQU4## where T denotes the transpose. A vector φ(k) and an unknown parameter vector θ(k) are given as follows: ##EQU5##

The RLS algorithm can be given as follows: ##EQU6## where λ(k) is the forgetting factor.

The initial values of this algorithm are θ(0)=0 and P(0)=νI where ν is a positive large number and I is a unit matrix. The pulse transfer functions G_(i1) (z_(i) ⁻¹), . . . , G_(iN) (z_(i) ⁻¹) with respect to one process output yi*(k) are obtained. The identifying circuit 32 repeats the algorithm N times to identify the pulse transfer functions for al process outputs. A recursive extended least square algorithm, a recursive maximum likelihood algorithm or the like may be used as an unknown parameter prediction technique instead of the RLS algorithm. The vectors φ(k) and θ of the RELS algorithm are given as follows: ##EQU7##

As described above, the process dynamic characteristic can be identified as the pulse transfer function. The sampled data I-PD control parameters are obtained from the S-transfer function in a manner to be described later. The identified pulse transfer function is transformed by the S-transfer function calculator 34 to the S-transfer function. More particularly, the components G_(ij) (z_(i) ⁻¹) for i=1, . . . , N and j=1, . . . , N of the pulse transfer function in equation (2) are respectively transformed to the S-transfer functions using the following technique. Thereafter, the denominators of the obtained S-transfer functions are reduced to a common denominator to obtain the general transfer function Gp(s) for the multi-input/multi-output process. A method for obtaining coefficients G₀ and G₁ of the following equation is described first.

    Gp(s)=1/(G.sub.0 +G.sub.1 s+G.sub.2 s.sup.2 +G.sub.3 s.sup.3 +. . . )(16)

A pulse transfer function G(z⁻¹) of the subprocess is defined as follows: ##EQU8##

The step response in equation (17) is given as x_(n) defined as follows: ##EQU9##

The step response x_(n) is approximated by an (m+1)th polynomial as a function of t, so that ##EQU10##

The coefficients f_(i),n (i=0, 1, . . . m) are obtained on the basis of ##EQU11## by solving the following simultaneous equations: ##EQU12## When the following equations are given: ##EQU13## X(s) is regarded as an approximation of a Laplace transform X(s) of the step response x(t) of the controlled process. Therefore, an S-transfer function Gp(s) can be calculated as follows: ##EQU14## The solution to equation (21) is substituted in equations (22) to (24) to give: ##EQU15##

The first term of the right-hand side of equation (25) is obtained by substituting z=e.sup.τs in the pulse transfer function G(z⁻¹) of equation (17), and the second term thereof is a correction term. When equation (26) is given as follows:

    G(e.sup.τs)=1/(C.sub.0 +C.sub.1 s+C.sub.2 s.sup.2 +C.sub.3 s.sup.3 +. . . )                                                       (26)

the coefficients C_(i) (i=0, 1, 2, . . . ) are obtained. ##EQU16##

The correction term Δ.sup.(m) (s) is expressed as follows:

    Δ.sup.(m) (s)=d.sub.0 +d.sub.1 (τs)+d.sub.2 (τs).sup.2 + . . .                                                         (33)

The denominator coefficient of the S-transfer function Gp(s) can be obtained as follows: ##EQU17## The coefficients d_(i) (i=0, 1, 2, . . . ) in equation (35) are shown in Table 1 below:

                                      TABLE                                        __________________________________________________________________________     (Δ.sup.(m) (s) and d.sub.i parameters)                                   m Δ.sup.(m) (s)                                                                              d.sub.0                                                                          d.sub.1                                                                          d.sub.2                                                                           d.sub.3                                                                           d.sub.4                                                                              d.sub.5                                                                              d.sub.6                                                                             d.sub.7                         __________________________________________________________________________     0 Δ.sup.(0) (s) = 1                                                                          1 0 0  0  0     0     0    0                               1 Δ.sup.(1) (s) = (e.sup.τs - 1)/τ.sub.s                                             1 1/2                                                                              1/6                                                                               1/24                                                                              1/120 1/720 1/5,040                                                                             1/40,320                        2 Δ.sup.(2) (s) = (1 + τ.sub.s /2)                                                       1 1/2                                                                              1/12                                                                              1/24                                                                              1/360 1/720 1/20,160                                                                            1/40,320                          · (e.sup.τs + e.sup.-τs - 2)/(τ.sub.s).sup.2            3 Δ.sup.(3) (s) = (1 + τ.sub.s + (τ.sub.s).sup.2 /3)                                 1 1/2                                                                              1/12                                                                              0  1/40  -13   422  -348                              · (3e.sup.-τs - 3 + e.sup.τs - e.sup.-2τs)/(τ.s       ub.s).sup.3                       /1,440                                                                               /120,960                                                                            /362,880                        4 Δ.sup.(4) (s) = (1 + 3τ.sub.s /2                                                       1 1/2                                                                              1/12                                                                              0  -1/720                                                                               3/160 -14,689                                                                             271,928                           + 11τ.sub.s.sup.2 /12 + τ.sub.s.sup.3 /4)                                                                      /907,200                                                                            /3,791,928                        · (e.sup.τs - 4 + 6e.sup.-τs - 4e.sup.-2τs                + e.sup.-3τs)/(τ.sub.s).sup.4                                        __________________________________________________________________________

The S-transfer function calculator 34 transforms each pulse transfer function G_(ij) (z⁻¹) to the S-transfer function Gp_(ij) (s) by the above means. In general, denominator polynomials of the transfer functions Gp_(ij) (s) differ from each other. The denominator polynomials are then reduced to a common denominator to obtain the general transfer function for the multi-input/multi-output process. In particular, the S-transfer function Gp(s) for the N-input/N-output process 10 is expressed as follows: ##EQU18## for a_(i) εR¹, a₀ ≠0, B_(i) εR^(N)×N, and B₀ ≠0.

The auto-tuning operation of the control parameter will be described wherein the sampled-data I-PD control system is defined as shown in FIG. 4.

The sampled data I controller 18 is approximated as follows:

    K*(Δ)=K*Δ.sup.-1                               (37)

The sampled-data PD controller 20 is approximated as follows:

    F*(Δ)=F.sub.0 *+F.sub.1 *ΔF.sub.2 *Δ.sup.2 +F.sub.3 *Δ.sup.3 + . . .                                    (38)

where ##EQU19##

The difference operator δ_(i) corresponds to a differential operator s of a continuous time. As the sampling period τ_(i) is increased to zero, the difference operator δ_(i) becomes s of a continuous time; k/δ_(i) becomes k/s; and kδ_(i) becomes ks. The approximation of the sampled-data I controller 18 and the sampled-data PD controller 20 with respect to a continuous time base is expressed as follows:

    K/s=[K*(Δ)T.sup.-1 (I-z.sup.-1)]/s                   (42)

    F=[F*(Δ)T.sup.-1 (I-z.sup.-1)]/s                     (43)

A means A is a polynomial of s. ##EQU20##

When equation (37) is substituted in equation (42):

    K/s=K*/s                                                   (45)

Equation (38) is then substituted into equation (43) to provide: ##EQU21##

The parameter tuning circuit 36 calculates the control parameter matrix K* of equation (37) and the control parameter matrices F₀ *, F₁ *, F₂ * and F₃ * of equation (38) in the following manner. The coefficients of s of equation (46) are expressed as follows: ##EQU22##

Equations (47) to (50) are solved for the control parameters F₀ *, F₁ *, F₂ * and F₃ *: ##EQU23##

The parameter tuning circuit 36 produces the control parameters K*, F₀ *, F₂ * and F₃ * such that the dynamic characteristic of the process, i.e., the S-transfer function (Gp(s)=B(s)/a(s)) from the set-point value R(s) to the process output Y(s) of the controlled loop (FIG. 4), is matched with the reference model M.sub.Σ. This model matching can be performed in accordance with the following equation:

    I+sK.sup.-1 (H+F)=M.sub.Σ                            (55)

According to equation (45), K=K* is obtained. In addition,

    H=Gp.sup.-1 (s)=B.sup.-1 (s)a(s)                           (56)

According to equation (36), ##EQU24## where

    H.sub.0 =a.sub.0 B.sub.0.sup.-1                            (58)

    H1=(a.sub.1 I-H.sub.0 B.sub.1)B.sub.0.sup.-1               (59)

    H.sub.2 =(a.sub.2 I-H.sub.0 B.sub.2 -H.sub.1 B.sub.1)B.sub.0.sup.-1 (60)

    H3=(a.sub.3 I-H.sub.0 B.sub.3 -H.sub.1 B.sub.2 -H.sub.2 B.sub.2)B.sub.0.sup.-1                                    (61)

The following model which has no interference and in which overshoot can be easily changed according to the response shape parameter a₁ is selected as the reference model: ##EQU25##

The response shape parameter α_(i) is set to be a proper value in the range between 0 and 1.0. This parameter α₁ can be independently set for each loop, so that the response shape of the reference model can be easily set for each loop. For example, FIGS. 5 and 6 show step responses of the reference model when the response shape parameters α_(i) are given as α₁ =0 and α₂ =1.0 for N=2. FIG. 5 shows process outputs y₁ and y₂ when the set-point value r₁ changes in a stepwise manner. These outputs have substantially no overshoot. FIG. 6 shows process outputs y₁ and y₂ when the set-point value r₂ changes in a stepwise manner. Each of these process outputs y₁ and y₂ has about a 10% overshoot.

The following equations are obtained as a result of model matching using equation (62):

    K.sup.-1 (H.sub.0 +F.sub.0)=Σ (for s)                (72)

    K.sup.-1 (H.sub.1 +F.sub.1)=Γ.sub.2 Σ.sup.2 (for s.sup.2) (73)

    K.sup.31 1 (H.sub.2 +F.sub.2)=Γ.sub.3 Σ.sup.3 (for s.sup.3) (74)

    K.sup.-1 (H.sub.3 +F.sub.3)L=Γ.sub.4 Σ.sup.4 (for s.sup.4) (75)

When equations (72) to (75) are solved for the F₀, F₁, F₂ and F₃, the following equations are given:

F₀ =KΣ-H₀ (76)

    F.sub.1 =KΓ.sub.2 Σ.sup.2 -H.sub.1             (77)

    F.sub.2 =KΓ.sub.3 =H2                                (78)

    F.sub.3 =KΓ.sub.4 -H3                                (79)

Substitution of equations (76) to (79) into equations (51) to (54), respectively, yield: ##EQU26##

Equations (80) to (83) still include an unknown matrix Σ and the parameter K*, so that Σ and K* are obtained using equations (80) to (83).

Since Σ and K* vary in accordance with different operation modes, they must be obtained for each operation mode.

In the I-P mode, since F₁ *=F₂ *=0 is established, the following simultaneous equations are given: ##EQU27## When K* is eliminated from equations (84) and (85), the equation about Σ is obtained as follows:

    (H.sub.1 +H.sub.0 T/2)Γ.sub.3 Σ.sup.2 -(H.sub.2 -H.sub.0 T.sup.2 /6)Γ.sub.2 Σ-(H.sub.2 /2+H.sub.1 T/6)T=0 (86)

Equation (86) is rewritten as follows: ##EQU28##

The unknown matrix Σ is given by a smallest positive root of equation (87).

The control parameter matrices K* and F₀ * in the I-P mode can be obtained as follows:

    K*=(H.sub.1 +H.sub.0 T/2)(Γ.sub.2 Σ.sup.2 +TΣ/2).sup.-1 ( 89)

    F.sub.0 *=K*Σ-H.sub.0                                (90)

In the I-PD mode, F₂ *=F₃ *=0 is given, so that the following simultaneous equations are obtained: ##EQU29## When the parameter K* is eliminated from equations (91) and (92), the following equation about Σ is obtained: ##EQU30## Equation (93) is written in the following manner: ##EQU31##

The unknown matrix Σ is the smallest positive root of equation (94). In the I-PD mode, the control parameter matrices K*, F₀ * and F₁ * are obtained as follows:

    K*=(H.sub.2 +H.sub.1 T+H.sub.0 T.sup.2 /3)×(Γ.sub.3 Σ.sup.3 +TΓ.sub.2 Σ.sup.2 +T.sup.2 Σ/3).sup.-1 (96)

    F.sub.0 *=K*Σ-H.sub.0                                (97)

    F.sub.1 *=K*Γ.sub.2 Σ.sup.2 +K*TΣ/2-H.sub.1 -H.sub.0 T/2 (98)

The parameter tuning circuit 36 produces optimal values of the control parameters K*, F₀ * and F₁ * for the sampled-data I-PD controller 16 in accordance with the identified process dynamic characteristic. In other words, the parameter tuning circuit 36 tunes the parameters.

The data g_(ij) (z_(i) ⁻¹) and λ_(ij) (z_(i) ⁻¹) of the controllers in FIG. 2 satisfies the following relations when the ij components of the K*, F₀ * and F₁ * are given as k_(ij) *, f_(0ij) * and f_(1ij) *:

    g.sub.ij (z.sub.j.sup.-1)=g.sub.0ij (1-z.sub.j.sup.-1).sup.-1 (99)

for

    g.sub.0ij =k.sub.ij *·τ.sub.j                 (100)

    λ.sub.ij (z.sub.j.sup.-1)=(λ.sub.0ij -∥.sub.1ij z.sub.j.sup.-1 +λ.sub.2ij z.sub.j.sup.-2)×(1-z.sub.j.sup.-1).sup.-1           (101)

for

    λ.sub.0ij =f.sub.0ij *+f.sub.1ij *·τ.sub.j.sup.-1 (102)

    λ.sub.1ij =f.sub.0ij *+2f.sub.1ij *·τ.sub.j.sup.-1 (103)

    λ.sub.2ij =f.sub.1ij                                (104)

The control variable u* can be calculated by e* and y* in accordance with the velocity type control algorithm given by the following equations: ##EQU32##

The sampled-data I-PD control can be performed for the multi-input/multi-output process 10 in accordance with its dynamic characteristic.

According to the present invention as described above, in order to satisfy the identifiability condition, the identification signal of several percentages of the control variable are applied to the output terminal of the controller (i.e., input terminal of the process), so that the process dynamic characteristic (pulse transfer function) can be identified. The S-transfer function is obtained from the identified pulse transfer function and is matched with the noninterference multi-input/multi-output reference model whose overshoot can be arbitrarily determined for every loop, thereby obtaining the sampled-data I-PD control parameters. Therefore, these control parameters can be auto-tuned in accordance with the process dynamic characteristic. For this reason, even if the process to be controlled tends to be interfered with, or has different set-point values of the respective loops, each loop can be optimally controlled. In addition, since I-PD control instead of PID control is performed, the cancellation of pole-zero does not occur. Therefore, according to the invention the controlled variable can be always optimally controlled to be equal to the set-point value and will not be influenced by disturbance. Furthermore, since a small amplitude identification signal is used, the process will not be subject to great variations, unlike the limit sensitivity method and the limit cycle method. In addition, identification and closed loop control are simultaneously performed, so that the tuning period of the controller can be shortened.

In the above description, the interference multi-input/multi-output process is an object to be controlled. However, the present invention can also be applied to a noninterference multi-input/multi-output process and a one-input/one-output process. When the proportional gain of the I-PD controller is set to be zero, the controller is set in the open loop control mode. The identification signal is applied to the output terminal of the controller so that the process dynamic characteristic can be identified in the open loop control mode in the same manner as in the closed loop mode. Any signal, belonging to the steady state irregular process, such as a pseudo random signal, a normal random signal or the like can be used as the persistently exciting identification signal. The M-sequence signal need not be directly applied but can be processed through a digital filter; a filtered M-sequence signal can be used. In addition to this modification, the response shape parameter can change during tuning. In the above embodiment, the response shape parameter continuously changes. However, this parameter can be selected from the preselected values. 

What is claimed is:
 1. A sampled-data I-PD control apparatus for an interference N-(positive integer not less than 2), input/N-output process comprising:control error calculating means for calculating respective differences between N outputs of the process and corresponding N set-point values to generate N control errors; sampled-data I-PD controller means for calculating the N outputs of the process and the N control errors in accordance with sampled-data I-PD control parameters to obtain N control variables, and for supplying the N control variables to N inputs of the process; identification signal generating means for respectively supplying N persistently exciting identification signals to the N inputs of the process; identifying means for identifying a pulse transfer function of the process in accordance with the N inputs and the N outputs of the process while the N persistently exciting identification signals are supplied to the N inputs; S-transfer function calculating means for transforming an identified transfer function to an S-transfer function; and tuning means for calculating an S-transfer function from the set-point values to the process outputs in accordance with a transformed S-transfer function, matching the calculated S-transfer function with an S-transfer function from the set-point values to the process outputs of a noninterference N-input/N-output process model, and tuning the sampled-data I-PD control parameters in accordance with a matching result.
 2. An apparatus according to claim 1, in which said control error calculating means comprises a first adder a (+) input terminal of which receives the N set-point values and a (-) input terminal of which receives the N outputs from the process, and a first sampler for sampling outputs from said first adder.
 3. An apparatus according to claim 2, in which said sampled-data I-PD controller means comprises a sampled-data I controller for receiving an output from said first sampler, a sampled-data PD controller for receiving the N outputs of the process through a second sampler for sampling the N outputs from the process in synchronism with said first sampler, and a second adder a (+) input terminal of which receives an output from said sampled-data I controller and a (-) input terminal of which receives an output from said sampled-data PD controller, an output from said second adder being supplied to the process through a holder.
 4. An apparatus according to claim 3, in which a third adder is connected between said second adder and said holder to add the output from said second adder and an output from said identification signal generating means and to supply an addition result to said holder.
 5. An apparatus according to claim 4, in which the N outputs from the process are supplied to said identifying means through said second sampler, and an output from said third adder is directly supplied to said identifying means.
 6. An apparatus according to claim 1, in which said identification signal generating means generates a maximum period sequence signal.
 7. An apparatus according to claim 1, in which said sampled-data I-PD controller means calculates the control variables in accordance with a velocity type control algorithm.
 8. An apparatus according to claim 1, in which said identifying means identifies the pulse transfer function in accordance with a recursive least square algorithm.
 9. An apparatus according to claim 1, in which said S-transfer function calculating means calculates the S-transfer function by Laplace-transforming a response obtained by linearly approximating a step response of the pulse transfer function.
 10. An apparatus according to claim 1, in which said tuning means selects a model as a control model wherein an overshoot between input/output pairs is independently variable in accordance with a response shape parameter. 